package com.breeze.components.message.secure;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 事务内的方法保证执行
 *
 * @author breeze
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface SecureInvoke {

  /** 最大重试次数 默认3次 */
  int maxRetryTimes() default 3;

  /**
   * 默认异步执行
   *
   * @return 是否异步执行
   */
  boolean async() default false;
}
